// Node
let a = 1;
let b = 2;
[a, b] = [b, a];
console.log(a, b);
// REPL 模式
// 基于node或者nginx 实现web服务器 资源处理服务器 数据服务器 提供api接口
// node 单线程异步 无阻塞 IO 抗压 抗并发能力强

// I/O  一般指对文件的读写操作
// I input 输入
// O output 输出
// node 全局对象 global

// process :node 中的进程管理
    // process.nextTick()
    // process.env 全局环境变量
    // process.env.NODE_EVN === 'dev' && 'pro'
// Buffer: 数据格式
// setImmediate 立即执行定时器
// 在REPL命令中 输出的this是globel 但是在xx.js中输出的this是当前模块本身

// __dirname 代表当前模块的绝对路径
// 如果直接写'../../'相当于用户当前 所在文件夹 的相对路径

// path.resolve 当前node执行时所在目录
// console.log(require('path').resolve());
// 我们一般认为执行的目录就是项目的根目录
// console.log(require('path').resolve('package.json'));
// 传参是拼接目录


// npm npm i xxx --save-dev 安开发环境依赖
        // npm i --production 安装 生产环境依赖
        // npm root -g 查看全局安装的目录
        // npm uninstall xxx -g 全局卸载

// node环境下每新建一个js 都相当于创建了一个新的模块